pub fn odd_fibnacci_sum(threshold: u32) -> u32 {
    let mut fibs = vec![1, 1];
    let mut sum = 0;
    for i in 2.. {
        let fibi = fibs[i - 1] + fibs[i - 2];
        if fibi > threshold {
            break;
        }
        if fibi % 2 == 1 {
            sum += fibi;
        }
        fibs.push(fibi);
    }
    if threshold <= 1 {
        0
    } else {
        sum + 2
    }
}
